{% extends "model.html" %}
{% import "form.html" as form %}

{% block input %}
    <div class="block aside left properties">
        <div class="title">Параметры</div>
        <form action="/producer" method="post" class="properties">
            {{ form.input(input.instream, "instream", label='Срок между заявками:', unit='ч') }}
            {{ form.input(input.total_time, "total_time", label='Период работы:', unit='ч') }}
            {{ form.input(input.times, "times", label='Число итераций:') }}
            <fieldset>
                <div class="legend">
                    <a href="#" onclick="add_operation(this)" title="Добавить рабочего"><span class="button add right"></span></a>
                    Продолжительность работы
                </div>
                {{ form.input(input.deviation, "deviation", label='Разброс:') }}
                {% for index, operation in input.operations|d({'0' : ''})|dictsort %}
                    {{ form.input(operation, "operations." + loop.index0|string, label='<a title="Удалить рабочего" href="#" onclick="remove_operation(this)"><span class="button remove"></span></a>Рабочий ' + loop.index|string, unit='ч', class='operation') }}
                {% endfor %}
            </fieldset>
            <fieldset>
                <div class="legend">Прибыли и убытки</div>
                {{ form.input(input.income, "income", label='Цена изделия:', unit='руб') }}
                {{ form.input(input.costs, "costs", label='Издержки:', unit='руб') }}
                {{ form.input(input.salary, "salary", label='Зарплата:', unit='руб') }}
            </fieldset>
            <div class="row submit">
                <input type="reset" value="Сбросить" />
                <input type="submit" value="Считать" />
            </div>
        </form>
    </div>
{% endblock %}


{% block output %}
<div class="block">
    <div class="title">Результаты моделирования</div>
    <div class="content" style="padding-top: 8px">
    {% with %}
        {% if output.agregated %}
            {% set mgc    = output.min_guaranteed_profit %}
            {% set output = output.mean %}
        {% else %}
            {% set mgc = output.balance.total %}
        {% endif %}
        <table style="width: 100%">
            <tbody>
                <tr>
                    <th colspan="2" style="width: 50%">Заявки</th>
                    <th colspan="2" style="width: 50%">Доходы и расходы</th>
                <tr>
                <tr>
                    <th>Всего</th>
                    <td>
                        {{ output.quality.abs.total|round(2) }}
                        <span class="unit">заявок</span>
                    </td>
                    
                    <th>Выручка</th>
                    <td>
                        {{ output.balance.processed|round(2) }}
                        <span class="unit">руб</span>
                    </td>
                </tr>
                <tr>
                    <th class="nested">
                        {{ form.color('#008090') }}
                        Принято
                    </th>
                    <td>
                        {{ output.quality.abs.processed|round(2) }}
                        <span class="unit">заявок</span>
                    </td>
                    <th>Чистая прибыль</th>
                    <td>
                        {{ output.balance.total|round(2) }}
                        <span class="unit">руб</span>
                    </td>
                </tr>
                <tr>
                    <th class="nested">
                        {{ form.color('#FF4D6F') }}
                        Отклонено
                    </th>
                    <td>
                        {{ output.quality.abs.rejected|round(2) }}
                        <span class="unit">заявок</span>
                    </td>
                    
                    <th>Упущенная прибыль</th>
                    <td>
                        {{ output.balance.rejected|round(2) }}
                        <span class="unit">руб</span>
                    </td>
                </tr>
                
                <tr>
                    <th class="section" colspan="2">Фактор структуры</th>
                    <th class="section" colspan="2">Минимальная гарантированная прибыль</th>
                </tr>
                
                <tr>
                    <td class="poster" style="padding: 18px" colspan="2">{{ output.factor|round(2) }}</td>
                    <td class="poster" colspan="2">{{ mgc|round(2) }}</td>
                </tr>
            </tbody>
        </table>
        
        {% if output.quality.abs.total %}
        <div class="figure chart">
            <img alt="Заявки" src="http://chart.apis.google.com/chart?cht=p&amp;chs=261x270&amp;chco=008090,FF4D6F&amp;chds=0,{{ output.quality.abs.total }}&amp;chd=t:{{ output.quality.abs.processed }},{{ output.quality.abs.rejected }}&amp;chdl=Принятые%20({{ output.quality.pc.processed }}%25)|Отклонённые%20({{ output.quality.pc.rejected }}%25)&amp;chdlp=b" />
            <div class="caption">Заявки</div>
        </div>
        
        <div class="figure chart">
            <img alt="Количество ожидающих заявок" src="http://chart.apis.google.com/chart?cht=bvg&amp;chs=247x270&amp;chds=0,{{ output.max_queue }}&amp;chxt=y,x&amp;chm=B,0,0,0&amp;chxr=0,0,{{ output.max_queue }}|1,1,{{ output.queues|length }}&amp;chco=1560BD&amp;chd=t:{{ output.queues|join(",") }}&amp;chl=Рабочий%20{{ range(1, output.queues|length + 1)|join("|Рабочий%20") }}&amp;chbh=a">
            <div class="caption">Среднее число заявок в ожидании</div>
        </div>
        {% endif %}
    {% endwith %}
    </div>
</div>
{% endblock %}

{% block about %}
<div id="content">
    <h1>Модель производственной фирмы</h1>
    <p>Модель производственной фирмы описывает последовательность операций, необходимых для изготовления изделия на фабрике.</p>
    <p><em><strong>TODO:</strong> не забыть воды налить</em>
</div>
{% endblock %}

